import qs from 'qs';
import ajax from '@/utils/ajax/index';
import authService from '@/services/user/auth';
import config from '@/config';
import handleCatch from '@/api/handleCatch';

export default {
  findFirstByAccount(account) {
    return ajax.get(config.ajaxApi+'/user/account?account='+account)
      .then((res) => res.data)
      .catch(handleCatch);
  },
  updateLoginPasswordByToken(data) {
    return authService.getToken().then((token) => {
      return ajax.patch(config.ajaxApi+'/user/updateLoginPasswordByToken?token='+token, qs.stringify(data))
        .then((res) => res.data)
        .catch(handleCatch);
    });
  },
  updateSafePasswordByToken(data) {
    return authService.getToken().then((token) => {
      return ajax.patch(config.ajaxApi+'/user/updateSafePasswordByToken?token='+token, qs.stringify(data))
      .then((res) => res.data)
      .catch(handleCatch);
    });
  },
  findFirstByToken() {
    return authService.getToken().then((token) => {
      return ajax.get(config.ajaxApi+'/user/token?token='+token)
				.then((res) => res.data)
				.catch(handleCatch);
    });
  },
  login(data) {
    return ajax.post(config.ajaxApi+'/user/login', qs.stringify(data))
			.then((res) => res.data)
			.catch(handleCatch);
  },
  create(data) {
    return ajax.post(config.ajaxApi+'/user', qs.stringify(data))
			.then((res) => res.data)
			.catch(handleCatch);
  }
};
